Description of Keys & Commands
==============================
Note: English translation still under construction!

Command-Group "MOUSE": Maus
===========================

Mit den MOUSE-Commands knnen Mausklicks auf dem Bildschirm ausgefhrt werden.
Nach einem Knopf-Klick kehrt der Mauszeiger eigenstndig zum Ursprungsort zurck.
Das Ermitteln der erforderlichen Koordinaten ist kein Problem, denn fr diesen
Zweck werden die Maus-Koordinaten stets im "Bearbeiten > Knpfe"-Fenster in
der rechten, oberen Ecke angezeigt, sofern der Knopf mit dem gebogenen Pfeil
gedrckt ist. Wenn man mit der Maus auf den gewnschten Punkt fhrt, an dem der
Mausklick spter automatisiert ausgefhrt werden soll, braucht man die angezeigten
Koordinaten nur noch in den Maus-Command bertragen.


/MOUSE.AREA.LEFT [x1..]: To mark an area on screen pos. <x1>,<y1> to <x2>,<y2>
------------------------

Example: {/MOUSE.AREA.LEFT 255,319,295,450}

Werden die Koordinaten weggelassen, so werden die Variablen VAR-1 bis 4 eingesetzt.


/MOUSE.CLICK.LEFT [x,y]: To set left button mouse click on screen pos. <x>,<y>
/MOUSE.CLICK.RGHT [x,y]: To set right button mouse click on screen pos. <x>,<y>
/MOUSE.DOUBLE.LFT [x,y]: To set left button double mouse click on screen pos. <x>,<y>
------------------------

Example: {/MOUSE.CLICK.LEFT 255,319}

Ab Version 7.9 knnen statt absoluter Koordinatenangaben die Variablen VAR eingesetzt werden.
Dabei ist x stets VAR-1 und y VAR-2.
Um mit den Variablen zu arbeiten lt man die Koordinaten-Parameter einfach weg.

Beispiel:

{/BTCH.EXPLICIT}
{/VAR.FLD.CHANGE 1}
{/VAR.SET 288}
{/VAR.FLD.CHANGE 2}
{/VAR.SET 150}
{/MOUSE.CLICK.LEFT}
{/VAR.FLD.CHANGE 1}


--> Hinweis
Der Makro-Rekorder bedient sich auch dieser Commands, indem er sie whrend der
Aufnahme generiert. Nachtrgliche manuelle nderungen stellen also kein Problem
dar.


/MOUSE.GO.ADD-X [v] ...: To move mouse pointer <+/- v> pixel on X-axis (default VAR1)
/MOUSE.GO.ADD-Y [v] ...: To move mouse pointer <+/- v> pixel on Y-axis (default VAR2)
/MOUSE.GO.SET [x,y] ...: To move mouse pointer to co-ordinates <x,y> (default VAR1/2)
/MOUSE.GO.WIN .........: To move mouse pointer to the left-top corner of the active window
------------------------

Example: s. below


/MOUSE.LEFT.DOWN ......: To set left mouse button into button-down-state
/MOUSE.LEFT.UP ........: To set left mouse button into button-up-state
------------------------

Example: s. below


/MOUSE.MEM.SNAP .......: To snap current mouse pointer co-ordinates into RK-MousePosMemory
/MOUSE.GO.MEM .........: To move mouse pointer to co-ordinates of RK-MousePosMemory values
------------------------

Example 1:

{/BTCH.EXPLICIT}
{/MOUSE.MEM.SNAP}
{/MOUSE.GO.SET 174,174}
{/MOUSE.LEFT.DOWN}
{/MOUSE.GO.ADD-X 80}
{/MOUSE.GO.ADD-Y 25}
{/MOUSE.LEFT.UP}
{/MOUSE.GO.MEM}

Example 2:

{/BTCH.EXPLICIT}
{/MOUSE.OFFSET *Editor,160,309}
{/MOUSE.MEM.SNAP}
{/MOUSE.GO.SET 255,365}
{/MOUSE.LEFT.DOWN}
{/VAR.FLD.CHANGE 2}
{/VAR.SET 16}
{/BTCH.LOOP.START.VAL 5}
{/MOUSE.GO.ADD-Y}
{/BTCH.LOOP.END}
{/MOUSE.LEFT.UP}
{/BTCH.DELAY .5}
{/MOUSE.GO.MEM}
{/VAR.FLD.CLR}


Relative Koordinaten zu einem definiertem Fenster
-------------------------------------------------
Mchte man das Men eines nicht maximierten Fensters automatisieren, so ergibt sich
das Problem, da bei einer Fensterverschiebung die Sache nicht mehr funktioniert.
Fr diesen Zweck stellt RK einen "auto-generierten" Command zur Verfgung, der die
Differenz, die sich aus der Fensterverschiebung ergibt, ausgleicht.
Der Command nennt sich

{/MOUSE.OFFSET}

und kann erzeugt werden, indem man im Fenster "Bearbeiten > Knpfe" auf den Knopf mit
dem Koordinaten-Symbol ber dem Zuweisungsfeld klickt.

Nachdem man den o.g. Knopf angeklickt hat, wird man nach dem Fenster-Titel gefragt.
Die linke, obere Ecke dieses Fensters dient zuknftig als neuer 0/0-Punkt, und nicht
mehr die linke, obere Ecke des Bildschirmes.
Dieser Offset ist aber nur innerhalb des Skriptes gltig und knnte sogar durch einen
anderen Offset weiter unten im Script neu festgesetzt werden.
Nach Eingabe des Titels macht RK den Rest allein, indem der Command mit den berechneten
Koordinaten in das Skript eingefgt wird. Normalerweise an den Anfang des Skriptes,
steht dort der Command BTCH.EXPLICIT, dann in die folgende Zeile.

-> Wichtig!
Zu dem Zeitpunkt, an dem der Koordinaten-Knopf angeklickt wird, mu das Skript lauffhig
sein, damit RK die Relationen korrekt berechnen kann.
Mit anderen Worten: Nach dem man die Koordinaten der Mouse-Commands auf ein Fenster aus-
gerichtet hat bzw. mittels des Makro-Rekorders generieren lie, darf das betroffene
Fenster in seiner Position nicht verndert werden, bevor man die Offset-Funktion aufruft.

-> Test

- ffne Notepad
- Starte den Makro-Rekorder
- Klicke in Notepad auf Bearbeiten
- Klicke in Notepad auf Uhrzeit/Datum
- Beende die Aufnahme

Wenn wir nun das Makro abspielen, wird hoffentlich das Datum/Uhrzeit in den Text eingefgt.
Wrden wir nun das Notepad-Fenster verschieben, so funktioniert das nicht mehr, da RK die
Mausklicks irgendwo "im Wald" macht.
Aber Stop! Bitte das Notepad-Fenster jetzt nicht verschieben !!!

- Klicke den Koordinaten-Knopf im Bearbeiten > Knpfe - Fenster
- Gebe den Fenster-Titel ein: *Editor
  Der Asterics (Platzhalter, Joker) ist wichtig, da sich der Fenster-Titel - je nach
  geffnetem Dokument - verndert.
  Bitte auf Gro- und Kleinschreibung achten!
- Anschlieend fgt RK den Offset-Command ein, der so hnlich aussehen drfte:
  {/MOUSE.OFFSET *Editor,180,120}

Wenn nun das Skript abgespielt wird, so sollte es keine Rolle mehr spielen, an welcher
Bildschirm-Position sich Notepad befindet.

-> Tip
Diese Funktion eignet sich auch fr die Nachbearbeitung eines mit dem Makro-Rekorder
generierten Skripts.
